---@meta _

---Removes a specific buff from the player.
---@param buffIndex integer
function CancelPlayerBuff(buffIndex) end

---Cancels your current tracking buff (Find Minerals etc.)
function CancelTrackingBuff() end

---Retrieves info about a certain effect (beneficial, harmful or passive)
---[Documentation](https://warcraft.wiki.gg/wiki/API_GetPlayerBuff?oldid=3951140)
---@param buffId integer
---@param buffFilter? string
---@return integer buffIndex 
---@return integer untilCancelled 
function GetPlayerBuff(buffId, buffFilter) end

-- Retrieves the number of applications of a debuff or buff.
---@param buffIndex integer
---@return number applications
function GetPlayerBuffApplications(buffIndex) end

---Get the debuff type for a player debuff ("Magic", "Curse", "Disease", or "Poison")
---@param buffIndex integer
---@return string buffDispelType
function GetPlayerBuffDispelType(buffIndex) end

---Retrieves the texture identifier for a certain buff 
---[Documentation](https://warcraft.wiki.gg/wiki/API_GetPlayerBuffTexture?oldid=4896681)
---@param buffIndex integer
---@return string buffTexture
function GetPlayerBuffTexture(buffIndex) end

-- Retrieves how long a buff will last before expiring  
---[Documentation](https://warcraft.wiki.gg/wiki/API_GetPlayerBuffTimeLeft?oldid=2250730)
---@param buffIndex integer
---@return integer buffTimeLeft
function GetPlayerBuffTimeLeft(buffIndex) end

---Return information about main and offhand weapon enchantments.
function GetWeaponEnchantInfo() end

---Retrieve info about a certain buff on a certain unit.
---[Documentation](https://turtle-wow.fandom.com/wiki/API_UnitBuff)
---@param unit string
---@param index number
---@param showCastable? boolean
---@return string buffTexture
---@return integer buffApplications
function UnitBuff(unit, index, showCastable) end

---Retrieve info about a certain debuff on a certain unit.
---[Documentation](https://turtle-wow.fandom.com/wiki/API_UnitDebuff)
---@param unit string
---@param index number
---@param showDispellable? string
---@return string debuffTexture
---@return number debuffApplications
---@return string debuffDispelType
function UnitDebuff(unit, index, showDispellable) end